package com.ruyiadmin.springboot.entity_data_model.entity_model.business_model.module_management;

import com.baomidou.mybatisplus.annotation.*;

import java.io.Serializable;

import com.ruyiadmin.springboot.common_infrastructure.models.base_entity_model.RuYiAdminBaseEntity;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.*;
import org.hibernate.validator.constraints.Length;

import javax.validation.constraints.NotNull;

/**
 * <p>
 * 模块模型
 * </p>
 *
 * @author RuYiAdmin
 * @since 2022-07-12
 */
@Data
@TableName("biz_module")
@ApiModel(value = "BizModule对象", description = "模块表")
@NoArgsConstructor
@AllArgsConstructor
public class BizModule extends RuYiAdminBaseEntity implements Serializable {

    private static final long serialVersionUID = 1L;

    @ApiModelProperty("模块名称")
    @TableField("MODULE_NAME")
    @NotNull
    @Length(max = 512)
    private String moduleName;

    @ApiModelProperty("模块简称")
    @TableField("MODULE_SHORT_NAME")
    @NotNull
    @Length(max = 256)
    private String moduleShortName;

    @ApiModelProperty("模块英文简称")
    @TableField("MODULE_SHORT_NAME_EN")
    @NotNull
    @Length(max = 128)
    private String moduleShortNameEn;

    @ApiModelProperty("采用HTTP协议，HTTP或者HTTPS")
    @TableField("MODULE_PROTOCOL")
    @NotNull
    @Length(max = 15)
    private String moduleProtocol;

    @ApiModelProperty("模块地址：ip或者域名")
    @TableField("MODULE_ADDRESS")
    @NotNull
    @Length(max = 256)
    private String moduleAddress;

    @ApiModelProperty("模块端口")
    @TableField("MODULE_PORT")
    private Integer modulePort;

    @ApiModelProperty("模块logo图片位置")
    @TableField("MODULE_LOGO_ADDRESS")
    private String moduleLogoAddress;

    @ApiModelProperty("模块单点登录地址")
    @TableField("MODULE_SSO_ADDRESS")
    @Length(max = 512)
    private String moduleSsoAddress;

    @ApiModelProperty("模块待办地址")
    @TableField("MODULE_TODO_ADDRESS")
    @Length(max = 512)
    private String moduleTodoAddress;

    @ApiModelProperty("序号")
    @TableField("SERIAL_NUMBER")
    private Integer serialNumber;

}
